//
// Copyright (c) 2024 BPer
//
#ifndef SRC_BPERRTP_BPERRTPHEADER_H_
#define SRC_BPERRTP_BPERRTPHEADER_H_

#include <bperrtp/BPerRtp.h>

typedef struct BPerRtpHeader{
    uint8_t padding_length;
    uint8_t cc;
    uint8_t payload_type;
    uint8_t version;
    uint16_t sequence;
    uint32_t timestamp;
    uint32_t ssrc;
    int32_t marker;
    int32_t ignore_padding;
    BPerRtpExtensions* extensions;
    uint32_t csrc[15];
}BPerRtpHeader;
#ifdef __cplusplus
extern "C"{
#endif
int32_t bPer_encode_rtpHeader(BPerBuffer* buf,BPerRtpHeader* header);
int32_t bPer_decode_rtpHeader(BPerBuffer* buf,BPerRtpHeader* header);
#ifdef __cplusplus
}
#endif

#endif /* SRC_BPERRTP_BPERRTPHEADER_H_ */
